Mobility and transportation need generator using neural networks

ABSTRACT

A method, software tool, and system for generating realistic synthetic ride-requests associated with a mobility or transportation service, including: utilizing a generative adversarial network, learning the spatial-temporal distribution of a plurality of real ride-requests; and, utilizing the generative adversarial network and based on the learning step, generating one or more synthetic source and destination ride-request geolocations that retain a statistical distribution of the plurality of real ride-requests. The generative adversarial network is a Wasserstein generative adversarial network.

CROSS-REFERENCE TO RELATED APPLICATION

The present disclosure is a continuation-in-part (CIP) of co-pendingU.S. patent application Ser. No. 16/120,561, filed on Sep. 4, 2018, andentitled “A DATA-DRIVEN METHOD AND SYSTEM TO FORECAST DEMAND FORMOBILITY UNITS IN A PREDETERMINED AREA BASED ON USER GROUP PREFERENCES,”which claims the benefit of priority of co-pending U.S. ProvisionalPatent Application No. 62/668,943, filed on May 9, 2018, and entitled “ADATA-DRIVEN METHOD AND SYSTEM TO FORECAST DEMAND FOR MOBILITY UNITS IN APREDETERMINED AREA BASED ON USER GROUP PREFERENCES,” the contents ofboth of which are incorporated in full by reference herein.

TECHNICAL FIELD

The present disclosure relates generally to the mobility andtransportation fields. More particularly, the present disclosure relatesto a mobility and transportation need generator using neural networks(NNs).

BACKGROUND

Ride-hailing services have become an important part of daily sociallife. Ride-hailing service providers collectively manage a fleet drivenby more than 35 million drivers globally to fulfill ever-increasingdemand. At such a scale, any optimization of the efficiency ofride-hailing algorithms will result in significant savings in cost andtime, improved traffic flow, and reduced emissions.

The algorithms for smart fleet orchestration are often data hungry. Theneed for virtually unlimited, privacy-aware, and realistic syntheticdata has been rising. For most researchers, large-scale real data isdifficult to access. Even for ride-hailing service providers who own thedata, it is still challenging to test rare or hypothetical scenarios.Synthesizing ride-requests realistically is problematic. In the timedomain, the pattern of ride-requests is often different depending ontime of day and day of the week. In the spatial domain, differentregions, such as urban and suburban areas, usually present differentpatterns as well.

Thus, ride-hailing services have gained tremendous importance in sociallife today, and the amount of resources involved have steadily beenincreasing. Ride-request data is crucial to improving ride-hailingefficiency and minimizing cost. Accordingly, the present disclosure aimsto model human mobility patterns to generate realistic ride-requestdata, thereby addressing the prevailing problem of a lack of historicaltraining data and realistic synthetic data or different rare andhypothetical scenarios. Such synthetic generation inherently providesthe desired anonymity. In particular, the present disclosure aims tomodel both temporal and spatial distributions jointly for ride-hailingservices. A ride-request Wasserstein generative adversarial network(RR-WGAN) is proposed to generate plausible pick-up and drop-offgeolocations. The generated ride-requests are extensively evaluatedunder a wide range of criteria, providing a comprehensive understandingof how the model performs. This is advantageous to ride-hailing serviceproviders, research communities, policy-makers, and the like.

SUMMARY

The present disclosure proposes a generative model based on a generativeadversarial network (GAN) to learn the spatial-temporal distribution ofride-requests. The RR-WGAN is presented as an alternative solution toprevious graph-based work. Apart from historical ride ride-request data,the graph-based model requires prior knowledge of points-of-interest(POIs) in a geographical area. By using this pool of POIs, syntheticrides are generated. In such scenarios, geolocations of source anddestination of synthetic ride-requests are limited to only a pool ofavailable POIs. This is problematic if prior POI information in certainareas is sparse. The approach of the present disclosure requires minimalprior knowledge of POIs to generate synthetic geolocations. Currently,available historical open-source data is representative of only aportion of plausible ride-requests. With the RR-WGAN, the ride-requestspace can be explored in a more exhaustive manner by generatingsynthetic source (or pick-up) and destination (or drop-off)geolocations, while still retaining the statistics of true datadistribution.

Thus, the present disclosure provides a novel spatial-temporalgenerative model, RR-WGAN, that is designed to perform ride-requestgeneration. A mechanism is provided to incorporate the semantics of aneighborhood of the geolocation in a global embedding to encapsulate allride-request information succinctly. A set of evaluation criteria isalso provided for the ride-request generation task that providesbenchmarks for future reference.

In one exemplary embodiment, the present disclosure provides a methodfor generating realistic synthetic ride-requests associated with amobility or transportation service, the method including: using agenerative adversarial network, learning the spatial-temporaldistribution of a plurality of real ride-requests; and, using thegenerative adversarial network and based on the learning step,generating one or more synthetic source and destination ride-requestgeolocations that retain a statistical distribution of the plurality ofreal ride-requests. The generative adversarial network is a Wassersteingenerative adversarial network. The method further includes conditioningthe generative adversarial network on temporal variables to jointlygenerate source and destination embeddings. The method further includesusing a noise vector to jointly generate the source and destinationembeddings. The method further includes, using a neural network of anencoder and a decoder associated with the generative adversarialnetwork, mapping spatial information to a low-dimensional denserepresentation, with source and destination ride-request geolocationsrepresented by respective embeddings instead of latitude and longitudeprior to decoding and latitude and longitude after decoding. Semanticsof location surroundings are captured in the source and destinationride-request geolocations by processing a point-of-interest vector. Themethod further includes normalizing the one or more synthetic source anddestination ride-request geolocations to location coordinates. Themethod further includes assigning points-of-interest to the locationcoordinates during the learning step. The generative adversarial networkincludes a generator that produces synthetic samples from a noise sourceto mimic real world data and a discriminator that differentiatessynthetic ride request data from real world ride request data.

In another exemplary embodiment, the present disclosure provides anon-transitory computer-readable medium for generating realisticsynthetic ride-requests associated with a mobility or transportationservice stored in a memory and executed by a processor to perform thesteps including: using a generative adversarial network, learning thespatial-temporal distribution of a plurality of real ride-requests; and,using the generative adversarial network and based on the learning step,generating one or more synthetic source and destination ride-requestgeolocations that retain a statistical distribution of the plurality ofreal ride-requests. The generative adversarial network is a Wassersteingenerative adversarial network. The steps further include conditioningthe generative adversarial network on temporal variables to jointlygenerate source and destination embeddings. The steps further includeusing a noise vector to jointly generate the source and destinationembeddings. The steps further include, using a neural network of anencoder and a decoder associated with the generative adversarialnetwork, mapping spatial information to a low-dimensional denserepresentation, with source and destination ride-request geolocationsrepresented by respective embeddings instead of latitude and longitudeprior to decoding and latitude and longitude after decoding. Semanticsof location surroundings are captured in the source and destinationride-request geolocations by processing a point-of-interest vector. Thesteps further include normalizing the one or more synthetic source anddestination ride-request geolocations to location coordinates. The stepsfurther include assigning points-of-interest to the location coordinatesduring the learning step. The generative adversarial network includes agenerator that produces synthetic samples from a noise source to mimicreal world data and a discriminator that differentiates synthetic riderequest data from real world ride request data.

In a further exemplary embodiment, the present disclosure provides asystem for generating realistic synthetic ride-requests associated witha mobility or transportation service, the system including: a generativeadversarial network operable for: learning the spatial-temporaldistribution of a plurality of real ride-requests; and generating one ormore synthetic source and destination ride-request geolocations thatretain a statistical distribution of the plurality of realride-requests. The generative adversarial network is a Wassersteingenerative adversarial network.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is illustrated and described herein withreference to the various drawings, in which like reference numbers areused to denote like system components/method steps, as appropriate, andin which:

FIG. 1 is a schematic diagram illustrating one exemplary embodiment ofthe WGAN architecture of the present disclosure;

FIG. 2 is a schematic diagram illustrating one exemplary embodiment ofthe encoder-decoder network for location embedding of the presentdisclosure; and

FIG. 3 provides examples of raw images from open street maps (OSMs) forneighboring tiles.

DESCRIPTION OF EMBODIMENTS

The present disclosure models the spatial-temporal distribution ofride-requests to synthesize them realistically from a generative model.An i^(th) ride-request R_(i)∈Φ is comprised of source location s_(i) anddestination location d_(i) represented by latitude and longitude. Thetime at which the ride R_(i) was requested by the customer is given byt_(i). Therefore, Φ contains ride-requests represented as R_(i): (t_(i),s_(i),d_(i)). It is assumed that each ride-request is independent ofanother. The problem of modeling a ride-request is formulated aslearning a joint distribution of source and destination locations giventime t. S and D are continuous random variables of source location anddestination location, respectively. The joint probability density for agiven time t is represented by:p _(t)=

_(S,D)(s,d|t)   (1)

FIG. 1 is a schematic diagram illustrating one exemplary embodiment ofthe RR-WGAN architecture 100 of the present disclosure. The WGANarchitecture 100 includes a noise vector (z) 102 and a conditionalvector (c) 104 that are combined as an input (z,u) 106 to a generator G108 that performs multi-layer perceptron (MLP) steps to provide an arrayof generated ride-requests G(z,u) 110. An array of input ride-requests112 and the generated ride-requests G(z,u) 110 are fed to adiscriminator D 114 that also performs MLP steps, also using theconditional vector (c) 104, to determine a real or fake output D(x) 116.

Thus, a generative approach is used to learn Q(·) at different t, inorder to generate ride-requests including new source and destinationlocations.

FIG. 2 is a schematic diagram illustrating one exemplary embodiment ofthe encoder-decoder network 200 for location embedding of the presentdisclosure, forming a key part of the RR-WGAN architecture 100 (FIG. 1). The encoder-decoder network 200 includes and encoder 202 and adecoder 204, as well as the Wasserstein generative adversarial network(WGAN). The encoder 202 and decoder 204 map spatial information to alow-dimensional dense representation. Further, the source anddestination locations can be represented with their respectiveembeddings, instead of latitude and longitude. The WGAN is conditionedon temporal variables to jointly generate source and destinationembeddings. The encoder 202 feeds OSMs 206 to a convolutional neuralnetwork (CNN) 208 that performs MLP module processing with a POI vector210 to provide location embedding 212 that is then fed to the decoder204 for further MLP module processing to generate the desired latitudeand longitude data 214. In this sense, the encoder-decoder network 200utilizes OSMs 206 for each global positioning system (GPS) coordinate,as well as POI vectors 210 about the surroundings (in categories) totrain the model, and the decoder 204 provides corresponding latitude andlongitude data 214. The RR-WGAN architecture of FIG. 1 then generatescorresponding synthetic data with smaller realistic input, all via theuse of the CNN 208 (FIG. 2 ). Thus, a model can be generated withsynthetic (i.e., fake), but realistic, data based on inputs like day,time, and number of ride-requests, with pick-up and drop-off simulationsthen being enabled.

In order to generate a ride-request, the GPS coordinates must beconverted to a meaningful representation. This problem is formulated asa joint embedding learning of two data modalities: Map Data and POIs.

Map Data captures spatial properties of a given location based on visualfeatures of raw input images obtained from OSM data 306, as shown inFIG. 3 . A location has a more similar embedding to a spatially closelocation than to a spatially distant location. The tile images Iobtained from OSM are leveraged to learn visual cues of a location, suchas the roadways, water bodies, etc. In I={I₁, I₂, I₃, . . . , I_(n)},each tile image I_(i) is bounded by spatial boundaries given by (lat^(i)_(min), lat^(i) _(max), lon^(i) _(min), lon^(i) _(max)).

POI data profiles a given location based on venue categories in theproximity of the region. For instance, if a geolocation is in downtownarea of the city, then one finds venues like restaurants, coffee shops,and entertainment avenues in nearby locations. On the other hand, if ageolocation is in a suburban area, it is usually surrounded byresidential houses, gyms, and other recreational centers. Ten categoriesare defined to obtain the distribution of POIs for a given location. Prepresents a set of vectors including the distribution of allcategories, P=P₁, P₂, P₃, . . . , P_(n), where each POI vectorrepresents P_(i)=(lat^(i), lon^(i), M). Here, M is a k-dimensionalvector, where k is the number of POI categories.

This representation would not only encode the spatial information of agiven geolocation, but also capture the semantics of the locationsurroundings. The RR-WGAN is trained to eventually learn to generatesimilar embeddings, so that no such POI prior information is neededduring inference. A given location is represented with a correspondingtile with spatial resolution of 100×100 meters, along with a10-dimensional POI vector. To obtain an embedding, the encoder-decodernetwork 200 (FIG. 2 ) is jointly trained in order to map ahigh-dimensional tile image and POI vector to latent Euclidean space. F:v→H∈R^((n×d)), where F(·) is a non-linear mapping function that mapsinput v={I, P} to latent space H of d dimension. Therefore, the input tothe encoder-decoder framework is a tuple containing {v,target_(lat,lon)}, where target_(lat,lon) is the normalized latitude andlongitude of a target location.

The encoder 202 (FIG. 2 ) includes the CNN 208 (FIG. 2 ) to map thespatial tile images 206 (FIG. 2 ) to a low-dimension dense encoding,which later is combined with the 10-dimensional POI vector 210 (FIG. 2 )before passing it to fully connected layers. The output of the encoder202 is therefore a 64-dimensional representation vector.

Triplet loss is defined to bring embeddings of two similar locationsclose to each other in the Euclidean space, while pushing those ofdistinct locations further apart. Triplets are defined, where eachtriplet includes an anchor location v_(a), a neighbor location v_(n)that is spatially close, and a distant location v_(d) that is fartherfrom the location of interest. Therefore, to minimize the distancebetween v_(a) and v_(n), while maximizing the distance between v_(a) andv_(d), the triplet loss TL is defined as:TL(v _(a),v_(n),v_(d))=[∥f(v _(a))−f(v _(n))∥₂ −∥f(v _(a))−f(v_(d))∥₂+m]+  (2)where [·]+ is a rectifier unit, max(0,·). The function f(·) isapproximated through the encoder network 200 in FIG. 2 , and m is themargin that puts a restriction on how far the distant embedding can bepushed, i.e., if ∥f(v_(a))−f(v_(d))∥₂+m<∥f(v_(a))−f(v_(n))∥₂, the TL isminimized to bring the f(v_(a)) and f(v_(n)) close to each other.

The decoder 204 (FIG. 2 ) maps the above embedding of every geolocationto normalized 2-dimensional Cartesian coordinates. WGS84 Web Mercator ispost-processed to WGS84. If target_(lat,lon) and the output of decoderare y and y′, respectively, the decoder loss is defined as amean-squared error loss, MSE(y, y′).

The encoder 202 and decoder 204 are jointly trained with a triplet lossand mean squared error loss:Loss(v,target_(lat,lon))=λ₁ ·TL(v _(a) ,v _(n),v_(d))+λ₂·MSE(y,y′),  (3)where λ₁ and λ₂ are model trade-off parameters.

The GAN 100 (FIG. 1 ) contains two key components: generator G 108 (FIG.1 ) and discriminator D 114 (FIG. 1 ). The generator 108 producessynthetic samples from a noise source to mimic real world data, whilethe discriminator differentiates synthetic ride request data from realworld ride request data. Specifically regarding the use of the WGAN 100,it has been proposed to minimize Jensen-Shannon (JS)-divergence betweenreal and synthetic distributions. However, JS-divergence is notcontinuous and differentiable everywhere, leading to difficulties duringtraining. In addition, JS-divergence suffers from a vanishing gradientproblem, and mode collapse leading to poor diversity in generatedsamples. It has also been proposed to minimize Wasserstein or EarthMover's distance as a better alternative to achieve stable GAN training.

Let P_(r) be the real data distribution, and P_(g) be the distributionof the generated data. P_(g) is approximated with a neural network suchthat P_(g)=gθ(z), where θ is the learnable parameter, and noise z issampled z˜Pz(z). The Wasserstein distance is the minimum cost oftransporting mass involved in transforming P_(r) to P_(g). TheWasserstein distance W (P_(r), P_(g)) is given as:

$\begin{matrix}{{{W\left( {P_{r},P_{g}} \right)} = {\inf\limits_{\gamma \in {\Pi({P_{r},P_{g}})}}{\mathbb{E}}_{{({x,y})} \sim \gamma}{{x - y}}}},} & (4)\end{matrix}$

However, the above equation for the Wasserstein distance is highlyintractable. Using the Kantorovich-Rubinstein duality, the Wassersteindistance is simplified as:

$\begin{matrix}{{{W\left( {P_{r},P_{g}} \right)} = {{\sup\limits_{{f}_{L} \leq 1}{{\mathbb{E}}_{x \sim P_{r}}\left\lbrack {f(x)} \right\rbrack}} - {{\mathbb{E}}_{x \sim P_{\theta}}\left\lbrack {f(x)} \right\rbrack}}},} & (5)\end{matrix}$

where the supremum is taken over all the 1-Lipschitz function. In ordercalculate the Wasserstein distance, the 1-Lipschitz function can beapproximated with a neural network such that f:X→R. Lastly, gradientupdate for the WGAN 100 is given as:

$\begin{matrix}{{\nabla_{\theta}{W\left( {P_{r},P_{g}} \right)}} = {{\nabla_{\theta}\left( {{{\mathbb{E}}_{x\sim P_{r}}\left\lbrack {f_{w}(x)} \right\rbrack} - {{\mathbb{E}}_{z\sim P_{Z}}\left\lbrack {f_{w}\left( {g_{\theta}(z)} \right)} \right\rbrack}} \right)}.}} & (6)\end{matrix}$

Here, f_(w), which maps input to output of the discriminator 114 is theoptimal approximation of the Wasserstein distance. In order to-enforcethe Lipschitz constraint, the weights in f_(w) are clipped to a range[-c, c], where c is a constant. The WGAN framework is used to generateride-requests.

The RR-WGAN network 100 (FIG. 1 ) models the space of ride-requestsformulated above. Furthermore, temporal information is crucial formodeling ride-requests as spatial patterns are largely dependent ontime. For instance, pick-up and drop-off demand peaks during rush houron weekends in downtown areas. These spatial-temporal dependenciesmotivate one to condition the RR-WGAN network 100 with categoricaltemporal information denoted by u∈U. u includes the one-hot encodedvector representation given by u_(i)={day_(i), hour_(i), isWeekend_(i)}that captures the spatial distribution of source and destination for agiven u_(i). Here, hour is the 24-dimensional hour of the day, day isthe 7-dimensional day of the week categorical variable representingMonday to Sunday, and isWeekend is the 1-dimensional Boolean thatdenotes weekend or weekday.

The ride-request embedding H_(r)={H_(s), H_(d)} includes concatenatedembeddings of generated sources H_(s) and destinations H_(d). Here,H_(s) and H_(d) are 64-dimensional vectors ranging from −1 to 1. TheH_(r) ride-request vector thus generated is 128-dimensional. Thegenerator maps input Z^(t) to an embedding of ride-request H_(r) ^(t) togenerate fake samples, i.e., G:Z^(t)→H_(r) ^(t)∈R^((nx(ds+dd))), where Gis the generator function and Z^(t)={Z, U} is concatenated with noisevector Z, and conditional vector U described above. The generator G 108takes in Z^(t) as an input to generate a 128-dimensional syntheticride-request, where the first 64-dimensions represent source and thelast 64-dimensions represent destination embeddings, respectively. Thediscriminator D 114 distinguishes the 128-dimensional syntheticride-requests H_(r) ^(t) from the 128-dimensional real requests H_(r).

The overall flow of RR-WGAN framework is as follows: (1) one obtainslocation embeddings for both source and destination from the methodproposed above; and (2) after training the RR-WGAN 100, one conditionsit a temporal vector along with a noise vector to generate aride-request. For a given conditional vector, one can generate anynumber of ride-requests by sampling an equal amount of random noisevectors, which ensures flexibility in the number of ride-requestsgenerated; and (3) lastly, the generated ride-requests including sourceand destination embeddings can be decoded to normalized to GPScoordinates through the pre-trained decoder 204. Note that each locationembedding, source and destination, is decoded separately. If thegenerated location does not have a valid POI, it is assigned the nearestPOI to that location.

Evaluation of the GAN 100 is a difficult task. Several metrics have beenproposed in the literature related to the image and speech domains.Here, it is necessary to evaluate if the synthetic source anddestination locations are statistically consistent with the ground-truthdistribution. Further, these ride request orders have dynamicspatial-temporal properties. Therefore, any evaluation metrics aredefined to measure the spatial and temporal similarities. Through theliterature, it has been discovered that ride-request graphs that evolvewith time exhibit a Densification Power Law (DPL) property. A city canbe divided into grids. A ride-request graph (RRG) includes nodes andedges; at each time t a new RRG is formed. Each grid is identified as anode, and an edge is formed from source node to destination node forevery ride-request. Therefore, the number of ride-requests is equal tothe number of edges, at given time t. It is empirically observed thatfor every time t:e(t)∝n(t)^(a)=Cn(t)^(a),where e(t) is the number of edges and n(t) is the number of nodes attime t. The densification refers to the growing number of nodes relativeto the number of edges with temporal evolution. Although the above C andα are representative of a geographical area to a certain extent in bothspatial and temporal domains, they do not provide insights into inherentcharacteristics of mobility patterns. Also, these parameters do notquantify the similarity of generated ride-requests' connectivitydistribution to that of the ground-truth.

In order to provide a comprehensive evaluation of syntheticride-requests, the following criteria need to be taken intoconsideration with respect to the true data distribution. They aregrouped into spatial metrics and temporal metrics, as discussed.

The spatial characteristics of the synthetic ride-requests are evaluatedboth independently

aggregated at a grid level. With respect to the RV Coefficient, let O=(N, E) be a directed graph of a ride-request with node set N=(n₁, n₂, .. . n_(N)). Each node spans across a geographical area of 500×500 metersfor evaluation purposes. In the graph O, each edge between source noden_(i) and destination node n_(j) is weighted by the number ofride-requests originating from a source towards a destination node,denoted with w_(ij). The weighted adjacency matrix is represented byW=(w_(ij))_(ij=1,2,3 . . . n). If normalized real and generated weightedadjacency matrices are denoted with W_(r) and W_(g), respectively, theRV coefficient between two adjacency matrices is given by:

$\begin{matrix}{{RV} = {\frac{{tr}\left( {W_{r}W_{g}} \right)}{\sqrt{{{tr}\left( {W_{r}W_{g}} \right)} \cdot {{tr}\left( {W_{r}W_{g}} \right)}}}.}} & (8)\end{matrix}$

Essentially, the RV coefficient gives the correlation between real andgenerated adjacency matrices W_(r) and W_(g), respectively. It rangesfrom [0, 1] or can be expressed as a percentage.

Regarding the Bhattacharyya distance for trip distance, a metric isdefined to evaluate the trip distance from source to destination forevery synthetic ride-request. Trip distance is the distance inkilometers from source to destination. If D_(r) is the real tripdistance distribution and D_(g) is the generated trip distancedistribution, the Bhattacharyya distance metric is given by:B _(d) =lnBC(D _(r) ,D _(g)),   (9)BC(D _(r) ,D _(g))=∫√{square root over (D _(r)(x)D _(g)(x))}dx.   (10)B_(d) is the distance between the two trip distance distributions and BCis the Bhattacharyya coefficient ranging from (0, 1).

The geographical areas are characterized into different segments. Ingeneral, downtown characterizes main business or commercial areas of acity, non-downtown regions are areas slightly farther from downtown butwithin city limits. Finally, suburbs characterize both residential andnon-commercial areas of a city. Percentages of trips to and from varioussegments were obtained as a proportion of total ride-requests.

Temporal similarity metrics measure the aggregated pick-up demand (orsource demand) of ride-requests across different geographic segments.Root-Mean-Square-Error (RMSE) and Symmetric Mean Average PercentageError (SMAPE) are considered for the above geographic segments. If a_(r)is the real pick-up demand and a_(g) is the generated demand for n timeperiod, SMAPE is given by:

$\begin{matrix}{{SMAPE} = {\frac{100}{n} \times {\sum\limits_{\mu}{\frac{❘{a_{r} - a_{g}}❘}{{❘a_{r}❘} + {❘a_{g}❘}}/2}}}} & (11)\end{matrix}$

Thus, the present disclosure proposes a novel generative approach totackling the challenges of limited access to ride-request data. With theRR-GAN methodology, synthetic source and destination locations aresynthesized to a fine granularity, as well as generated ride-requestswith adequate diversity. More modalities, like weather, events, andother relevant information can be added to the model. Furthermore, onecan study the effects of generated data in simulations, such as vehiclereallocation and dynamic ride-pooling simulations.

It is to be recognized that, depending on the example, certain acts orevents of any of the techniques described herein can be performed in adifferent sequence, may be added, merged, or left out altogether (e.g.,not all described acts or events are necessary for the practice of thetechniques). Moreover, in certain examples, acts or events may beperformed concurrently, e.g., through multi-threaded processing,interrupt processing, or multiple processors, rather than sequentially.

In one or more examples, the functions described may be implemented inhardware, software, firmware, or any combination thereof. If implementedin software, the functions may be stored on or transmitted over as oneor more instructions or code on a computer-readable medium and executedby a hardware-based processing unit. Computer-readable media may includecomputer-readable storage media, which corresponds to a tangible mediumsuch as data storage media, or communication media including any mediumthat facilitates transfer of a computer program from one place toanother, e.g., according to a communication protocol. In this manner,computer-readable media generally may correspond to (1) a tangiblecomputer-readable storage medium that is non-transitory or (2) acommunication medium, such as a signal or carrier wave. Data storagemedia may be any available media that can be accessed by one or morecomputers or one or more processors to retrieve instructions, codeand/or data structures for implementation of the techniques described inthis disclosure. A computer program product may include acomputer-readable medium.

By way of example, and not limitation, such computer-readable storagemedia can include random-access memory (RAM), read-only memory (ROM),electrically erasable-programmable read-only memory (EEPROM), compactdisc read-only memory (CD-ROM) or other optical disc storage, magneticdisk storage, or other magnetic storage devices, flash memory, or anyother medium that can be used to store desired program code in the formof instructions or data structures and that can be accessed by acomputer. Also, any connection is properly termed a computer-readablemedium. For example, if instructions are transmitted from a website,server, or other remote source using a coaxial cable, fiber optic cable,twisted pair, digital subscriber line (DSL), or wireless technologiessuch as infrared (IR), radio frequency (RF), and microwave, then thecoaxial cable, fiber optic cable, twisted pair, DSL, or wirelesstechnologies, such as IR, RF, and microwave are included in thedefinition of medium. It should be understood, however, thatcomputer-readable storage media and data storage media do not includeconnections, carrier waves, signals, or other transitory media, but areinstead directed to non-transitory, tangible storage media. Disk anddisc, as used herein, includes compact disc (CD), laser disc, opticaldisc, digital versatile disc (DVD), and Blu-ray disc, where disksusually reproduce data magnetically, while discs reproduce dataoptically with lasers. Combinations of the above should also be includedwithin the scope of computer-readable media.

Instructions may be executed by one or more processors, such as one ormore digital signal processors (DSPs), general purpose microprocessors,application specific integrated circuits (ASICs), field programmablegate arrays (FPGAs), complex programmable logic devices (CPLDs), orother equivalent integrated or discrete logic circuitry. Accordingly,the term “processor,” as used herein may refer to any of the foregoingstructure or any other structure suitable for implementation of thetechniques described herein. In addition, in some aspects, thefunctionality described herein may be provided within dedicated hardwareand/or software modules. Also, the techniques could be fully implementedin one or more circuits or logic elements.

The techniques of this disclosure may be implemented in a wide varietyof devices or apparatuses, including an integrated circuit (IC) or a setof ICs (e.g., a chip set). Various components, modules, or units aredescribed in this disclosure to emphasize functional aspects of devicesconfigured to perform the disclosed techniques, but do not necessarilyrequire realization by different hardware units. Rather, as describedabove, various units may be combined in a hardware unit or provided by acollection of interoperative hardware units, including one or moreprocessors as described above, in conjunction with suitable softwareand/or firmware.

Thus, the overall flow of the RR-WGAN framework of the presentdisclosure is as follows: (1) location embeddings are obtained for bothsource and destination; (2) after training the RR-WGAN, a temporalvector is conditioned along with a noise vector to generate aride-request. For a given conditional vector, any number ofride-requests can be generated by sampling an equal amount of randomnoise vectors, which ensures flexibility in the number of ride-requestsgenerated; (3) lastly, the generated ride-requests including source anddestination embeddings can be decoded to normalized to GPS coordinatesthrough the pre-trained decoder. Note that, each location embedding,source, and destination, is decoded separately. If the generatedlocation does not have a valid POI, it is assigned the nearest POI tothat location.

As new mobility offers are crowding the market, the understanding oftheir effects on society and the development of potential remedies isfragmented due to siloed data ownership and privacy concerns. The outputof the software of the present disclosure is useful for:

1. Anonymization—The output is synthetic, thus anonymous by nature, butsufficiently realistic for understanding mobility patterns. This isbeneficial in today's landscape with increased debate and legislationrelated to privacy.

2. Data volume—For any entity with scarce access to mobility data, thistool provides a way to overcome that scarcity and develop a betterunderstanding of mobility patterns by only inputting low-volume initialdata. This is beneficial for commercial newcomers who enter themarketplace, as well as for public officials.

3. What-if planning and analysis—What is unique to the solution of thepresent disclosure is the characterization of demand reached by encodingPoint-of-Interest (POI) data with pick-up and drop-off data. Thesoftware could essentially provide answers to “if we build a shoppingdistrict here, how would demand for mobility—and in turncongestion—change?”. This is beneficial for various decision-makingentities, ranging from public officials (policy-makers) to commercialplayers (for providing improved service).

4. Data driven development to tackle congestion and emissions—The outputcould very well be focused to tackle major issues associated withurbanization; what (infrastructure investments) do we need to do toefficiently move people around? With the rise of data-driven methods forfinding solutions, realistic data is crucial for high quality analysis.

Extrapolating from this work, the tool can potentially be used forgenerating synthetic but realistic mobility patterns for cities where nodata is available. This expands the software usability and purpose forboth traffic planning (e.g. “what type of shuttle service should weemploy?”; “where do we invest in bus stops?”) and commercial businesscase analysis (e.g. “which city would it make sense for us to enter?”;“where should we strategically place our e-scooters?”). Otherapplications are, of course, contemplated herein.

Although the present disclosure is illustrated and described herein withreference to preferred embodiments and specific examples thereof, itwill be readily apparent to one of ordinary skill in the art that otherembodiments and examples can perform similar functions and/or achievelike results. All such equivalent embodiments and examples are withinthe spirit and scope of the present disclosure, are contemplatedthereby, and are intended to be covered by the following non-limitingclaims for all purposes.

What is claimed is:
 1. A computer-implemented method, comprising:forming map images, using at least one processor, by obtaining openstreet map images and capturing spatial properties of given locationsbased on visual features of raw input images; utilizing anencoder-decoder network and the at least one processor, mapping spatialinformation from the map images to a low-dimensional denserepresentation, with source and destination ride-request geolocationsrepresented by respective embeddings instead of latitude and longitudeprior to decoding and latitude and longitude after decoding, wherein anencoder of the encoder-decoder network feeds map data for neighboringtiles to a convolutional neural network that performs multi-layerperceptron processing with a point-of-interest vector to providelocation embeddings and the decoder translates the location embeddingsto provide associated latitudes and longitudes; training a generativeadversarial network using the at least one processor, the locationembeddings provided by the map data for the neighboring tiles and thepoint-of-interest vector, and the associated latitudes and longitudesfrom the encoder-decoder network to learn the spatial-temporaldistribution of a plurality of real ride-requests; utilizing the atleast one processor, the generative adversarial network, and based onthe learned spatial-temporal distribution of the plurality of realride-requests, generating synthetic source and destination ride-requestgeolocations for an area for which it is determined that adequatepoint-of-interest and historical source and destination ride-requestgeolocations are not available, wherein the synthetic source anddestination ride-request geolocations are anonymized and retain astatistical distribution of the plurality of real ride-requests; whereinthe synthetic source and destination ride-request geolocations aregenerated utilizing the at least one processor and by inputting aconditional temporal vector and a noise vector to a generator of thegenerative adversarial network, wherein the generator performsmulti-layer perceptron steps to generate the synthetic source anddestination ride-request geolocations; determining a real or fake outputfeedback utilizing the at least one processor and a discriminator of thegenerative adversarial network that also performs multi-layer perceptronsteps using the synthetic source and destination ride-requestgeolocations, an array of input ride requests, and the conditionaltemporal vector; and utilizing the synthetic source and destinationride-request geolocations as data in a transportation model when it isdetermined that the adequate point-of-interest and historical source anddestination ride-request geolocations are not available.
 2. Thecomputer-implemented method of claim 1, further comprising conditioningthe generative adversarial network on temporal variables using theconditional temporal vector to jointly generate source and destinationembeddings.
 3. The computer-implemented method of claim 2, furthercomprising utilizing the noise vector to jointly generate the source anddestination embeddings.
 4. The computer-implemented method of claim 1,wherein semantics of location surroundings are captured in the sourceand destination ride-request geolocations by processing thepoint-of-interest vector.
 5. The computer-implemented method of claim 4,wherein the point-of-interest vector comprises a distribution oflocation categories resulting in a quantifiable location representation.6. The computer-implemented method of claim 1, further comprisingnormalizing the synthetic source and destination ride-requestgeolocations to location coordinates.
 7. The computer-implemented methodof claim 6, further comprising assigning points-of-interest to thelocation coordinates during the learning step.
 8. Thecomputer-implemented method of claim 1, wherein the generativeadversarial network comprises the generator that produces syntheticsamples from a noise source to mimic real world data and thediscriminator that differentiates synthetic ride request data from realworld ride request data.
 9. The computer-implemented method of claim 1,wherein the transportation model comprises one of a ride-hailing servicemodel and an infrastructure development model.
 10. A non-transitorycomputer-readable medium stored in a memory and executed by a processorto perform the steps comprising: forming map images by obtaining openstreet map images and capturing spatial properties of given locationsbased on visual features of raw input images; utilizing anencoder-decoder network, mapping spatial information from the map imagesto a low-dimensional dense representation, with source and destinationride-request geolocations represented by respective embeddings insteadof latitude and longitude prior to decoding and latitude and longitudeafter decoding, wherein an encoder of the encoder-decoder network feedsmap data for neighboring tiles to a convolutional neural network thatperforms multi-layer perceptron processing with a point-of-interestvector to provide location embeddings and the decoder translates thelocation embeddings to provide associated latitudes and longitudes;training a generative adversarial network using the location embeddingsprovided by the map data for the neighboring tiles and thepoint-of-interest vector and the associated latitudes and longitudesfrom the encoder-decoder network to learn the spatial-temporaldistribution of a plurality of real ride-requests; utilizing thegenerative adversarial network and based on the learned spatial-temporaldistribution of the plurality of real ride-requests, generatingsynthetic source and destination ride-request geolocations for an areafor which it is determined that adequate point-of-interest andhistorical source and destination ride-request geolocations are notavailable, wherein the synthetic source and destination ride-requestgeolocations are anonymized and retain a statistical distribution of theplurality of real ride-requests; wherein the synthetic source anddestination ride-request geolocations are generated by inputting aconditional temporal vector and a noise vector to a generator of thegenerative adversarial network, wherein the generator performsmulti-layer perceptron steps to generate the synthetic source anddestination ride-request geolocations; determining a real or fake outputfeedback utilizing a discriminator of the generative adversarial networkthat also performs multi-layer perceptron steps using the syntheticsource and destination ride-request geolocations, an array of input riderequests, and the conditional temporal vector; and utilizing thesynthetic source and destination ride-request geolocations as data in atransportation model when it is determined that the adequatepoint-of-interest and historical source and destination ride-requestgeolocations are not available.
 11. The non-transitory computer-readablemedium of claim 10, the steps further comprising conditioning thegenerative adversarial network on temporal variables using theconditional temporal vector to jointly generate source and destinationembeddings.
 12. The non-transitory computer-readable medium of claim 11,the steps further comprising utilizing the noise vector to jointlygenerate the source and destination embeddings.
 13. The non-transitorycomputer-readable medium of claim 10, wherein semantics of locationsurroundings are captured in the source and destination ride-requestgeolocations by processing the point-of-interest vector.
 14. Thenon-transitory computer-readable medium of claim 13, wherein thepoint-of-interest vector comprises a distribution of location categoriesresulting in a quantifiable location representation.
 15. Thenon-transitory computer-readable medium of claim 10, the steps furthercomprising normalizing the synthetic source and destination ride-requestgeolocations to location coordinates and assigning points-of-interest tothe location coordinates during the learning step.
 16. Thenon-transitory computer-readable medium of claim 10, wherein thegenerative adversarial network comprises the generator that producessynthetic samples from a noise source to mimic real world data and thediscriminator that differentiates synthetic ride request data from realworld ride request data.
 17. The non-transitory computer-readable mediumof claim 10, wherein the transportation model comprises one of aride-hailing service model and an infrastructure development model. 18.A system, comprising: memory storing instructions executed by aprocessor for providing an encoder-decoder network operable for: formingmap images by obtaining open street map images and capturing spatialproperties of given locations based on visual features of raw inputimages; mapping spatial information from the map images to alow-dimensional dense representation, with source and destinationride-request geolocations represented by respective embeddings insteadof latitude and longitude prior to decoding and latitude and longitudeafter decoding, wherein an encoder of the encoder-decoder network feedsmap data for neighboring tiles to a convolutional neural network thatperforms multi-layer perceptron processing with a point-of-interestvector to provide location embeddings and the decoder translates thelocation embeddings to provide associated latitudes and longitudes; andmemory storing instructions executed by a processor for providing agenerative adversarial network operable for: being trained using thelocation embeddings provided by the map data for the neighboring tilesand the point-of-interest vector and the associated latitudes andlongitudes from the encoder-decoder network to learn thespatial-temporal distribution of a plurality of real ride-requests;generating synthetic source and destination ride-request geolocationsthat retain a statistical distribution of the plurality of realride-requests for an area for which it is determined that adequatepoint-of-interest and historical source and destination ride-requestgeolocations are not available, wherein the synthetic source anddestination ride-request geolocations are anonymized and retain astatistical distribution of the plurality of real ride-requests; whereinthe synthetic source and destination ride-request geolocations aregenerated by inputting a conditional temporal vector and a noise vectorto a generator of the generative adversarial network, wherein thegenerator performs multi-layer perceptron steps to generate thesynthetic source and destination ride-request geolocations; determininga real or fake output feedback utilizing a discriminator of thegenerative adversarial network that also performs multi-layer perceptronsteps using the synthetic source and destination ride-requestgeolocations, an array of input ride requests, and the conditionaltemporal vector; and utilizing the synthetic source and destinationride-request geolocations as data in a transportation model when it isdetermined that the adequate point-of-interest and historical source anddestination ride-request geolocations are not available.